package wtc.stu.method;

import wtc.stu.entity.StuEntity;

import java.util.List;

public class StuImpl implements Interface {
    @Override
    public void methodSelect() {
        System.out.println("学生信息管理系统>>>>全查询学生信息");
        System.out.println("学生编号\t学生姓名\t年龄\t班级编号\t备注信息");
        List<StuEntity> ar = daoStu.getAll();
        for (StuEntity stuEntity : ar) {
            System.out.println(
                    "" + stuEntity.getSid() + "\t" + stuEntity.getSname() + "\t" + stuEntity.getAge() +
                            "\t" + stuEntity.getCid() + "\t" + stuEntity.getSremark() + "");
        }
        System.out.println("显示完毕 ！");
    }

    @Override
    public void methodInsert() {
        System.out.println("学生信息管理系统>>>>增加学生信息");
        System.out.println("以下是你可以选择的班级：");
        System.out.println("班级编号\t班级名称\t");
        List<StuEntity> ar = daoClass.getAll();
        for (StuEntity stuEntity : ar) {
            System.out.println(
                    "" + stuEntity.getCid() + "\t" + stuEntity.getCname() + "\t");
        }
        System.out.println("输入班级编号即可：");
        int cid = sa.nextInt();
        System.out.println("请输入要增加的学生姓名：");
        String sname = sa.next();
        System.out.println("请输入要增加学生的年龄：");
        int age = sa.nextInt();
        System.out.println("请输入学生备注信息：");
        String sremark = sa.next();
        // 封装
        StuEntity add = new StuEntity();
        add.setAge(age);
        add.setSname(sname);
        add.setCid(cid);
        add.setSremark(sremark);
        daoStu.addStu(add);
        System.out.println("增加成功！");
    }

    @Override
    public void methodUpdate() {
        System.out.println("学生信息管理系统>>>>全查询学生信息");
        System.out.println("学生编号\t学生姓名\t年龄\t班级编号\t备注信息");
        /************ 第一步 ***************/
        List<StuEntity> ar = daoStu.getAll();
        for (StuEntity stuEntity : ar) {
            System.out.println(
                    "" + stuEntity.getSid() + "\t" + stuEntity.getSname() + "\t" + stuEntity.getAge() +
                            "\t" + stuEntity.getCid() + "\t" + stuEntity.getSremark() + "");
        }
        System.out.println("显示完毕 ！");
        System.out.println("以上是你可以修改的学生信息，请输入你要修改的学生的编号：");
        /************ 第二步 **************/
        int sid = sa.nextInt();
        StuEntity myStu = daoStu.getOneById(sid);
        System.out.println("请你确认以下学生信息是否是你要修改的：");
        System.out.println(
                "" + myStu.getSid() + "\t" + myStu.getSname() + "\t" + myStu.getAge() +
                        "\t" + myStu.getCid() + "\t" + myStu.getSremark() + "");
        /*********** 第三步 **************/
        System.out.println("请输入要修改学生姓名：");
        String newSname = sa.next();
        System.out.println("请输入要修改的学生的年龄");
        int newAge = sa.nextInt();
        System.out.println("请输入要修改学生的班级编号：");
        int newCid = sa.nextInt();
        System.out.println("请输入要修改学生备注：");
        String newSremark = sa.next();

        StuEntity last = new StuEntity();
        last.setCid(newCid);
        last.setAge(newAge);
        last.setSremark(newSremark);
        last.setSname(newSname);
        last.setSid(sid);
        /************* 第四步 ****************/
        daoStu.updateStu(last);
        System.out.println("修改完毕 ！");
    }

    @Override
    public void methodDelete() {
        System.out.println("学生信息管理系统>>>>全查询学生信息");
        System.out.println("学生编号\t学生姓名\t年龄\t班级编号\t备注信息");
        /************ 第一步 ***************/
        List<StuEntity> ar = daoStu.getAll();
        for (StuEntity stuEntity : ar) {
            System.out.println(
                    "" + stuEntity.getSid() + "\t" + stuEntity.getSname() + "\t" + stuEntity.getAge() +
                            "\t" + stuEntity.getCid() + "\t" + stuEntity.getSremark() + "");
        }
        System.out.println("显示完毕 ！");
        System.out.println("以上是你可以删除的年级信息，请输入你要删除的年级信息的编号：");
        /************ 第二步 **************/
        int delId = sa.nextInt();
        StuEntity delStu = daoStu.getOneById(delId);
        System.out.println("请你确认以下年级信息是否是你要删除的：");
        System.out.println(
                "" + delStu.getSid() + "\t" + delStu.getSname() + "\t" + delStu.getAge() +
                        "\t" + delStu.getCid() + "\t" + delStu.getSremark() + "");
        /*********** 第三步 **************/
        daoStu.delStu(delId);
        System.out.println("删除完毕！");
    }
}
